import thin_render from "../../lib/thin_render.mjs";
import render_helper from "../../lib/render_helper.mjs";

/**
 * 渲染表格头部
 * @param {HTMLElement} gridview - 表格容器元素
 * @param {Object} template - 模板配置对象
 * @param {HTMLElement} colgroup - colgroup元素
 * @param {HTMLElement} headerrow - 表头行元素
 */
export function renderHeader(gridview, template, colgroup, headerrow) {
  // 渲染表头列
  template.gridview?.forEach((col) => {
    // 创建并设置col元素
    let co = document.createElement("col");
    render_helper(co, col);
    colgroup.appendChild(co);

    // 创建并设置th元素
    let th = document.createElement("th");
    if (col.width) th.style.width = col.width;

    // 设置表头文本
    if (typeof col.title !== "undefined") {
      thin_render(th, col.title);
    } else if (typeof col.col === "string") {
      thin_render(th, col.col);
    }
    headerrow.appendChild(th);

    // 设置表头样式
    if (col.class) {
      th.setAttribute("class", col.class);
    }
  });
}
